home *** CD-ROM | disk | FTP | other *** search
/ Programming a Multiplayer FPS in DirectX / Programming a Multiplayer FPS in DirectX (Companion CD).iso / DirectX / dxsdk_oct2004.exe / dxsdk.exe / Utilities / MView / gxu / adjoutline.h < prev    next >
Encoding:
C/C++ Source or Header  |  2004-09-30  |  2.0 KB  |  55 lines

  1. #pragma once
  2.  
  3. #ifndef ADJOUTLINE_H
  4. #define ADJOUTLINE_H
  5.  
  6. /*//////////////////////////////////////////////////////////////////////////////
  7. //
  8. // File: adjoutline.h
  9. //
  10. // Copyright (C) 1999 Microsoft Corporation. All Rights Reserved.
  11. //
  12. //
  13. //////////////////////////////////////////////////////////////////////////////*/
  14.  
  15. #include "crackdecl.h"
  16. #include "stripoutline.h"
  17.  
  18. class CAdjacencyOutline
  19. {
  20. public:
  21.     CAdjacencyOutline();
  22.     ~CAdjacencyOutline();
  23.  
  24.     HRESULT Init( LPD3DXBASEMESH ptmDrawMesh, DWORD *rgdwNeighbors);
  25.  
  26.  
  27.     HRESULT Draw( LPDIRECT3DDEVICE9 pDevice, DWORD iSubset,
  28.                     LPD3DXEFFECT pfxShowNormals, 
  29.                     LPD3DXEFFECT pfxColor, 
  30.                     DWORD dwColor,
  31.                     D3DXMATRIX *rgmIndexedMatrices, DWORD cIndexedMatrices);
  32.  
  33. private:
  34.     HRESULT CreateEmptyOutline();
  35.     void    AppendPoint(CD3DXCrackDecl1 &cdMesh, PUINT pwFaceCur, PBYTE pvMeshPoints, PBYTE pvLinePoints, UINT &iCurPoint);
  36.     void    AppendMidpoint(CD3DXCrackDecl1 &cdMesh, PUINT pwFace1, UINT iEdge, PBYTE pvMeshPoints, PBYTE pvLinePoints, UINT &iCurPoint);
  37.     void    AppendPointSkinned(CD3DXCrackDecl1 &cdMesh, PUINT pwFace1, UINT iEdge, PBYTE pvMeshPoints, PBYTE pvLinePoints, UINT &iCurPoint);
  38.     void    AppendMidpointSkinned(CD3DXCrackDecl1 &cdMesh, PUINT pwFace1, UINT iEdge, PBYTE pvMeshPoints, PBYTE pvLinePoints, UINT &iCurPoint);
  39.     void    AppendPointIndexSkinned(CD3DXCrackDecl1 &cdMesh, PUINT pwFace1, UINT iEdge, PBYTE pvMeshPoints, PBYTE pvLinePoints, UINT &iCurPoint);
  40.     void    AppendMidpointIndexSkinned(CD3DXCrackDecl1 &cdMesh, PUINT pwFace1, UINT iEdge, PBYTE pvMeshPoints, PBYTE pvLinePoints, UINT &iCurPoint);
  41.  
  42.     DXCrackFVF  m_cfvf;
  43.     BOOL m_bSkinning;
  44.     BOOL m_bIndexSkinning;
  45.     BOOL m_bHWVertexShaders;
  46.  
  47.     LPDIRECT3DVERTEXBUFFER9 m_pVertexBuffer;
  48.     LPDIRECT3DVERTEXDECLARATION9 m_pDecl;
  49.  
  50.     D3DXATTRIBUTERANGE *m_rgaeAttributeTable;
  51.     DWORD m_caeAttributeTable;
  52. };
  53.  
  54. #endif
  55.